﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid {
    
    
    public partial class Sanktsioon : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISanktsioon {
        
        private long @__objektID;
        
        private long @__tyypKL;
        
        private System.Int64? @__liikKL;
        
        private System.Int64? @__alaLiikKL;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISyydistusPunkt> @__aluseksOlevadSyydistusPunktid = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISyydistusPunkt>();
        
        public Sanktsioon() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Sanktsioon(long @objektID, long @tyypKL, System.Int64? @liikKL, System.Int64? @alaLiikKL, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISyydistusPunkt> @aluseksOlevadSyydistusPunktid) {
            this.@__objektID = @objektID;
            this.@__tyypKL = @tyypKL;
            this.@__liikKL = @liikKL;
            this.@__alaLiikKL = @alaLiikKL;
            this.@__aluseksOlevadSyydistusPunktid = @aluseksOlevadSyydistusPunktid;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public Sanktsioon(long @objektID, long @tyypKL, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISyydistusPunkt> @aluseksOlevadSyydistusPunktid) {
            this.@__objektID = @objektID;
            this.@__tyypKL = @tyypKL;
            this.@__aluseksOlevadSyydistusPunktid = @aluseksOlevadSyydistusPunktid;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Sanktsioon(ISanktsioon @sanktsioon) {
            this.@__objektID = @sanktsioon.ObjektID;
            this.@__tyypKL = @sanktsioon.TyypKL;
            this.@__liikKL = @sanktsioon.LiikKL;
            this.@__alaLiikKL = @sanktsioon.AlaLiikKL;
            this.@__aluseksOlevadSyydistusPunktid = @sanktsioon.AluseksOlevadSyydistusPunktid;
        }
        
        public virtual long ObjektID {
            get {
                return this.@__objektID;
            }
            set {
                this.@__objektID = value;
            }
        }
        
        public virtual long TyypKL {
            get {
                return this.@__tyypKL;
            }
            set {
                this.@__tyypKL = value;
            }
        }
        
        public virtual System.Int64? LiikKL {
            get {
                return this.@__liikKL;
            }
            set {
                this.@__liikKL = value;
            }
        }
        
        public virtual System.Int64? AlaLiikKL {
            get {
                return this.@__alaLiikKL;
            }
            set {
                this.@__alaLiikKL = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.AnnaIsikuKvalifikatsioonid.ISyydistusPunkt> AluseksOlevadSyydistusPunktid {
            get {
                return this.@__aluseksOlevadSyydistusPunktid;
            }
            set {
                this.@__aluseksOlevadSyydistusPunktid = value;
            }
        }
    }
}
